OpenWRT 各种烧录方式及量产(三)

您所在的位置:网站首页 openwrt 命令 OpenWRT 各种烧录方式及量产(三)

OpenWRT 各种烧录方式及量产(三)

2023-03-12 00:33| 来源: 网络整理| 查看: 265

界面烧录 — 不更新uboot 电脑连接WIFI(或者通过网线连接电脑与路由器), 通过浏览器访问路由器管理界面,进行升级。注意不要断电!!!(断电只能通过tftp方式恢复) Web openwrt-ar71xx-generic-ap147-16M-squashfs-sysupgrade.bin 在这里插入图片描述 winscp ---- 不更新uboot 电脑连接WIFI(或者通过网线连接电脑与路由器),打开WinScp软件输入IP地址与账户密码(连接上可能是路由器没有打开TFTPD服务器,或者路由器没有设置初始登录密码,通过路由器管理页面设置登录密码) winscp

make menuconfig 添加SFTP/FTP 方便winsc文件传输 Network ---> File Transfer ---> vsftp

输入密码

通过鼠标将升级文件拉到openwrt系统。(放在/tmp目录最好) 在这里插入图片描述 通过串口工具连接到openwrt主板 在这里插入图片描述 通过命令查看升级文件 在这里插入图片描述 通命令 sysupgrade -n xxx.bin (不保存配置文件) 在这里插入图片描述 等待烧录完成,然后自动重启(注意不要断电!!!) 在这里插入图片描述 在这里插入图片描述

tftp烧录 — 不更新uboot(一般在烧录中途断电导致根系统不完整或者编译固件和硬件不适配情况下使用这种方式)

通过串口工具连接路由器主板,上电时候uboot倒计时进入内核

查询主板相关信息

u-boot> printenv bootargs=console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=spi0.0:256k(u-boot),64k(u-boot-env),14528k(rootfs),1472k(kernel),64k(art),16000k(firmware) bootcmd=bootm 0x9F050000 || bootm 0x9FE80000 bootdelay=1 baudrate=115200 ipaddr=10.10.18.1 serverip=10.10.18.100 autoload=no hostname=u-boot_zbt-we1526 bootfile=firmware.bin loadaddr=0x80800000 ncport=6666 uboot_name=u-boot.bin uboot_addr=0x9F000000 uboot_size=0x40000 uboot_upg=if ping $serverip; then tftpb $loadaddr $uboot_name && if itest.l $filesize = 7; then echo Starting network console...;setenv stop_boot 1;echo;startnc;elif itest $cnt >= 5; then echo Starting U-Boot console...;setenv stop_boot 1;echo;elif itest $cnt >= 3; then echo HTTP server is starting for firmware update...;setenv stop_boot 1;echo;httpd;elif itest $cnt

配置TFTPD服务器

主板与电脑通过网线直连方式下 首先配置电脑的IP地址 $serverip , 然后通过Tftpd工具创建服务器(一般自动识别,只要选择存放固件目录) 在这里插入图片描述 Tftpd工具设置 在这里插入图片描述 验证是否正常ping通电脑服务器(如果不能ping 通,大概率是防火墙拦截)

u-boot> ping 10.10.18.100 eth0 link down enet1 port0 up Using eth1 device ## Error: ping failed, host 10.10.18.100 is not alive! u-boot>

在这里插入图片描述 在这里插入图片描述 关闭防火墙

u-boot> ping 10.10.18.100 Using eth1 device Ping OK, host 10.10.18.100 is alive! u-boot>

下载程序

通过查询主板相关信息 得到:升级步骤

fw_upg= if ping $serverip; ----> serverip=10.10.18.100 then tftpb $loadaddr $bootfile ----> loadaddr=0x80800000 bootfile=xxxx.bin erase $fw_addr +$filesize ----> fw_addr=0x9F050000 $filesize=文件大小(0x开头 注意+filesize是没有空格) cp.b $loadaddr $fw_addr $filesize echo DONE! Firmware upgraded!; else echo ERROR! $serverip is not reachable!; fi

tftpd下bin文件

得到升级命令:

tftpb 0x80800000 openwrt-ath79-generic-glinet_gl-mifi-squashfs-sysupgrade.bin

在这里插入图片描述 擦除固件地址

erase 0x9F050000 +0x4c032b

在这里插入图片描述 拷贝新固件到固件地址

cp.b 0x80800000 0x9F050000 0x4c032b

在这里插入图片描述

复位重启等待…

flash 烧录uboot 通过flash烧录器(建议买好点,如果自己生成wifi模块,因为涉及mac地址的滚码烧录)

量产问题 wifi模块量产需要购买mac地址

思路:可以将已经验证测试没有问题的样机,拆卸flash芯片通过flash烧录器拷贝出来,通过ultraedit软件打开 bin文件 查询mac地址。然后配置flash烧录器滚码进行烧录。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3